Как выбрать подходящий образ контейнера для Node.js-приложения
Основные моменты:
- Какой базовый образ использовать? - node:<version> — полноразмерный образ на основе Debian, удобен для разработки. - node:<version>-slim — урезанная версия, без ненужных инструментов. - node:<version>-alpine — суперлёгкий образ, но требует совместимости с musl вместо glibc.
- Как уменьшить размер образа? - Использование slim или alpine. - Уменьшение количества слоёв в Dockerfile. - Очистка временных файлов после установки зависимостей.
- Оптимизация производительности - Включение NODE_ENV=production перед установкой пакетов. - Использование --omit=dev в npm ci или yarn install --production. - Кэширование node_modules для ускорения сборки.
- Дополнительные аспекты - Выбор образа с LTS-версией Node.js для стабильности. - Изоляция зависимостей и минимизация уязвимостей. - Использование многослойных образов (multi-stage builds) для уменьшения итогового размера.
Выбор правильного контейнерного образа может значительно повлиять на размер, производительность и безопасность вашего Node.js-приложения.
Как выбрать подходящий образ контейнера для Node.js-приложения
Основные моменты:
- Какой базовый образ использовать? - node:<version> — полноразмерный образ на основе Debian, удобен для разработки. - node:<version>-slim — урезанная версия, без ненужных инструментов. - node:<version>-alpine — суперлёгкий образ, но требует совместимости с musl вместо glibc.
- Как уменьшить размер образа? - Использование slim или alpine. - Уменьшение количества слоёв в Dockerfile. - Очистка временных файлов после установки зависимостей.
- Оптимизация производительности - Включение NODE_ENV=production перед установкой пакетов. - Использование --omit=dev в npm ci или yarn install --production. - Кэширование node_modules для ускорения сборки.
- Дополнительные аспекты - Выбор образа с LTS-версией Node.js для стабильности. - Изоляция зависимостей и минимизация уязвимостей. - Использование многослойных образов (multi-stage builds) для уменьшения итогового размера.
Выбор правильного контейнерного образа может значительно повлиять на размер, производительность и безопасность вашего Node.js-приложения.
Among the actives, Ascendas REIT sank 0.64 percent, while CapitaLand Integrated Commercial Trust plummeted 1.42 percent, City Developments plunged 1.12 percent, Dairy Farm International tumbled 0.86 percent, DBS Group skidded 0.68 percent, Genting Singapore retreated 0.67 percent, Hongkong Land climbed 1.30 percent, Mapletree Commercial Trust lost 0.47 percent, Mapletree Logistics Trust tanked 0.95 percent, Oversea-Chinese Banking Corporation dropped 0.61 percent, SATS rose 0.24 percent, SembCorp Industries shed 0.54 percent, Singapore Airlines surrendered 0.79 percent, Singapore Exchange slid 0.30 percent, Singapore Press Holdings declined 1.03 percent, Singapore Technologies Engineering dipped 0.26 percent, SingTel advanced 0.81 percent, United Overseas Bank fell 0.39 percent, Wilmar International eased 0.24 percent, Yangzijiang Shipbuilding jumped 1.42 percent and Keppel Corp, Thai Beverage, CapitaLand and Comfort DelGro were unchanged.
The SSE was the first modern stock exchange to open in China, with trading commencing in 1990. It has now grown to become the largest stock exchange in Asia and the third-largest in the world by market capitalization, which stood at RMB 50.6 trillion (US$7.8 trillion) as of September 2021. Stocks (both A-shares and B-shares), bonds, funds, and derivatives are traded on the exchange. The SEE has two trading boards, the Main Board and the Science and Technology Innovation Board, the latter more commonly known as the STAR Market. The Main Board mainly hosts large, well-established Chinese companies and lists both A-shares and B-shares.